package com.qimu.saiyou.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 竞赛
 * @TableName competition
 */
@TableName(value ="competition")
@Data
public class Competition implements Serializable {
    /**
     * id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 竞赛名称
     */
    private String competitionName;
    private Long examId;

    /**
     * 标签列表（json 数组）
     */
    private String tags;

    /**
     * 竞赛头像
     */
    private String competitionAvatarUrl;

    /**
     * 最大参与人数
     */
    private Long maxNum;

    /**
     * 创建人
     */
    private Long userId;

    /**
     * cancel - 取消，end - 结束，running - 进行中，signingUp-报名中
     */
    private String competitionStatus;

    /**
     * 竞赛类型 ；0-线上赛|1-线下赛
     */
    private Integer competitionType;

    /**
     * 竞技模式 0-单人|1-多人
     */
    private Integer competitiveMode;

    /**
     * 队伍最大参与人数
     */
    private Long teamMaxNum;

    /**
     * 竞赛公告
     */
    private String announce;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 竞赛规则
     */
    private String rules;

    /**
     * 竞赛地点
     */
    private String address;

    /**
     * 竞赛奖励
     */
    private String reward;

    /**
     * 报名截止时间
     */
    private String signUpDeadline;

    /**
     * 竞赛结束时间
     */
    private String endTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 是否删除
     */
    private Integer isDelete;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}